iT邦幫忙

2024 iThome 鐵人賽

DAY 9
0

今日成果
Day9

在控制面板的操作,我希望方向在Landscape能夠重新調整按鈕位置。
建立一個新的PanelViewLandscape,運用GeometryReader判斷目前的方向,
讓畫面呈現PanelView或PanelViewLandscape。

ContentView

var body: some View {
        GeometryReader { geometry in
            if geometry.size.width > geometry.size.height {
                // 橫向模式
                LightZone(lightSettings: lightSettings)
                    .frame(maxWidth: .infinity)
                    .overlay(
                        PanelViewLandscape(lightSettings: $lightSettings)
                            .frame(maxWidth: 200, maxHeight: 500, alignment: .bottomTrailing)
                            .padding(4),
                        alignment: .bottomTrailing
                    )
            }  else {
                // 直向模式
                LightZone(lightSettings: lightSettings)
                    .frame(maxWidth: .infinity)
                    .overlay(
                        PanelView(lightSettings: $lightSettings)
                            .frame(maxWidth: 500, maxHeight: 200, alignment: .bottomTrailing)
                            .padding(4),
                        alignment: .bottomTrailing
                    )
                
            }
        }
    }

週末還完成了幾項

  • 重新定義位移計算,讓PositionPanel能夠控制光點在所有位置
  • 編排面板位置支援各種裝置尺寸與方向

上一篇
聊聊APP下一步
下一篇
畫面設計
系列文
從概念發想上架一支SwiftUI app30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言